.TH std::indirect_unary_predicate 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::indirect_unary_predicate \- std::indirect_unary_predicate

.SH Synopsis
   Defined in header <iterator>
   template< class F, class I >

   concept indirect_unary_predicate =
       std::indirectly_readable<I> &&
       std::copy_constructible<F> &&                         \fI(since C++20)\fP
       std::predicate<F&, std::iter_value_t<I>&> &&
       std::predicate<F&, std::iter_reference_t<I>> &&

       std::predicate<F&, std::iter_common_reference_t<I>>;

   The concept indirect_unary_predicate specifies requirements for algorithms that call
   unary predicates as their arguments. The key difference between this concept and
   std::predicate is that it is applied to the type that I references, rather than I
   itself.

   Semantic requirements

   F and I model indirect_unary_predicate only if all concepts it subsumes are modeled.
